# coding=utf-8
from gensim import corpora, models, similarities

dictionary = corpora.Dictionary.load('deerwester.dict')
corpus = corpora.MmCorpus('deerwester.mm')
print(corpus)

tfidf = models.TfidfModel(corpus) # 第一步 -- 初始化一个模型

doc_bow = [(0, 1), (1, 1)]
print(tfidf[doc_bow]) # 第二步 -- 使用模型转换向量
# 或者对整个语料库实施转换
corpus_tfidf = tfidf[corpus]
for doc in corpus_tfidf:
    print(doc)
# 在这个特殊的情况中，被转换的语料库与用来训练的语料库相同，但是这仅仅是偶然。
# 一旦转换模型被初始化了，它可以用来转换任何向量（当然最好使用与训练语料库相同的向量空间），即使它们并没有在训练语料库中出现。这是通过对潜在语义分析的折叠、隐含狄利克雷分配的主题推断等得到的

